home *** CD-ROM | disk | FTP | other *** search
- ###############################################################################
- #
- # Sub Name: linux_proc_cpuinfo
- #
- # Description: Read the /proc/cpuinfo on a Linux server and return a
- # STRUCT with the information.
- #
- # Arguments: None.
- #
- # Returns: hashref
- #
- ###############################################################################
- sub linux_proc_sysinfo
- {
- use strict;
-
- my (%cpuinfo, $line, $key, $value);
- local *F;
-
- open(F, '/proc/cpuinfo') or
- return RPC::XML::fault->new(501, "Cannot open /proc/cpuinfo: $!");
-
- while (defined($line = <F>))
- {
- chomp $line;
- next if ($line =~ /^\s*$/);
-
- ($key, $value) = split(/\s+:\s+/, $line, 2);
- $key =~ s/ /_/g;
- $cpuinfo{$key} = ($key eq 'flags') ? [ split(/ /, $value) ] : $value;
- }
- close(F);
-
- \%cpuinfo;
- }
-